The present invention relates to a method for making comparisons between reference logical entities and logical entities proceeding from a source file.
A process of iterative and simultaneous comparison between reference data and data proceeding from a file is described in U.S. Pat. No. 4,053,871, which is incorporated herein by reference.
A file upon which a comparison is to be carried out includes data called logical entities consisting of items of information, for example, of octets. A logical entity is a group of related data elements and the terms "logical entity" or "data elements" may be used interchangeably. The logical entities are of fixed or variable length. For variable length logical entities or data elements, it is necessary to add to each logical entity a special character to indicate its end. The logical entities are gathered in sequences indentified by a particular label (or ticket, or title, . . . ) called a special logical entity. The sequences may be of fixed or variable length, that is to say, they may include a number of logical entities which may be fixed or not fixed. A special character is added to each sequence which has a variable length to indicate its end.
An iterative and simultaneous comparison consists of testing for and recognizing a relationship between each logical entity, special or not, proceeding from the source and a number of reference logical entities which can be made available simultaneously. The relationship is, for example, a relationship of equality, of inequality, of bracketing, etc.
For this purpose each logical entity proceeding from the source is matched, item of information by item of information, with the reference logical entities which appear in successive lines of a reference table. The results from the matchings are combined in order to provide a comparison result which determines which information is to be stored.
U.S. Pat. No. 4,443,860 relates to a method of control which is useful for carrying out the method of comparison described above and which can be applied to items of information contained in a file having any construction or file arrangement. The method can be executed or carried out at the frequency or speed at which the items of information are received from the source without the need for an external preprocessing marking. The controlling and simultaneous execution of the elementary functions connected with the comparisons and storage operations are carried out without interrupting the retrieval of information from the file. These elementary functions which are to be executed simultaneously relate to: the localization (identification) processing and transfer of the items of information proceeding from the source; the sequential linking of the groups of simultaneous operations; and the tests concerning the results obtained from the preceding comparisons.
The control method and the contents of the above mentioned U.S. Pat. No. 4,443,860 are herein incorporated by reference. The method disclosed therein essentially consists of the following steps:
(a) Reference logical entities are recorded in a reference table with logical entities of different types being stored vertically in different horizontal zones of the table. The reference logical entities are stored in the same order that the sequences of logical entities which they are to be compared appear, not necessarily in a consecutive fashion, in the source file. Each horizontal zone of the table contains reference logical entities of the same type drawn up in their turn vertically by columns. For example, a given zone will contain the five words of the sentence "I want to go home", each word (reference logical entity) being located in a respective line of its column. All of the words in this zone are related so that the reference logical entity will be considered of the same type. These entities will be compared to input logical entities also of the same type.
(b) In a control memory, the following is recorded line by line:
(1) First items of control information including, firstly, items of control information relating to the comparison to be carried out between input logical entities of the same type from the source file and reference logical entities located in a horizontal zone of the table corresponding with the line in the control memory in which the said items of comparison control information are recorded, and secondly items of control information relating to the storage of input logical entities proceeding from the source file, and
(2) second items of information for control of operations to be carried out at the end of the comparison or comparisons effected with one or more items of input data elements from the file and/or from the storage of one or more items of input logical entities from the file, the items of information for control of operations including items of jump control information for controlling the linkage of the processes to be carried out;
(c) items of information from the source file are consecutively received; and
(d) the operations are executed which correspond with the first items of control information from a first line in the control store, then the operations which correspond with the second items of control information from this line, amongst them especially the linkage onto another, not necessarily consecutive, line in the control store and if necessary onto a horizontal zone of the reference table corresponding with this other line.
U.S. Pat. No. 4,443,860 also shows that it is possible to record in at least one line of the control store items of control information related to the loops to be carried out for the processes corresponding with this line of the control store and to register in a storage memory first items of information related to the number of loops to be carried out for the processes and second items of information related to the jump to be carried out in the control store and if necessary in the reference table when the number of loops has been completed. As the input logic entities (data elements) are received from the source file, the number of the processes which have been completed for a given line of the control store, is counted and the operations which correspond with the information related to the jump process are executed when the number of processes completed is equal to the number of loops recorded.